/*Austin Quach * APCS Period 3 * Elevator lab */ public class Elevator { //Field Variables private int highestFloor; private int currentFloor; private int maxPassengers; private int currentPassengers; //Default Constructor: no arguments / parameters public Elevator(int f, int p) { highestFloor = f; maxPassengers = p; currentPassengers = 0; currentFloor = 1; } //Takes in integer number public boolean loadPassengers(int addPassengers) { if (addPassengers <= maxPassengers && addPassengers + currentPassengers <= maxPassengers) { currentPassengers+=addPassengers; return true; }else { return false; } } //Unloads Passengers public boolean unloadPassengers(int unloadPassengers) { if(currentPassengers>=unloadPassengers) { currentPassengers -= unloadPassengers; return true; }else { return false; } } //Move Elevator to desired floor. public boolean moveToFloor(int newFloor) { if(newFloor>0) { if(currentFloor<highestFloor && newFloor <= highestFloor) { newFloor = newFloor-1; //Because in the default constructor, currentFloor is set to 1 so if we add new floor, it will always be 1 too high currentFloor = currentFloor + newFloor; return true; }else{ return false; } }else{ return false; } } //Gets number of passengers public int getNumberOfPassengers() { return currentPassengers; } //Get current floor public int getCurrentFloor() { return currentFloor; } }